package HomeWork;

import java.io.File;
import java.util.HashMap;
import java.util.Scanner;

/*题目三:
        键盘录入一个文件夹路径,统计该文件夹(不包含子文件夹)中,每种类型的文件及个数,
        注意:用文件类型("java","txt"...)作为key,用个数作为value,
        放入到map集合中,并按照如下格式打印map集合中的内容
        docx类型的文件有  1 个
        java类型的文件有  24 个
        txt类型的文件有  10 个*/
public class test3 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.next();
        File f = new File(s);
        HashMap<String, Integer> hm = new HashMap<>();
        if (f.exists()) {
            mothed1(f, hm);
        } else {
            System.out.println("您输入的文件夹路径没有文件，或是输入了错误的信息");
        }
        System.out.println(hm);
        System.out.println("统计结束");
    }

    private static void mothed1(File f, HashMap<String, Integer> hm) {
        File[] f1 = f.listFiles();
        for (File file : f1) {
            String name = file.getName();
            String[] split = name.split("\\.");
            if (split.length == 2) {
                String s = split[1];
                if (hm.containsKey(s)) {
                    Integer count = hm.get(s);
                    count++;
                    hm.put(s, count);
                }else {
                 hm.put(s,1);
                }
            } else {
             mothed1(file,hm);
            }
        }
    }
}
